#ifndef QLIB_HEADER_ERROR
#define QLIB_HEADER_ERROR

namespace qlib {

// Error codes
enum struct ErrorCode {
  NoError = 0,
  // Warnings
  BooleanError,
  IntersectionNotFound,
  MissingReference,
  UnsupportedRecord,
  UnofficialSpecification,
  InvalidRepetition,
  Overflow,
  // Errors
  ChecksumError,
  OutputFileOpenError,
  InputFileOpenError,
  InputFileError,
  FileError,
  InvalidFile,
  InsufficientMemory,
  ZlibError,
};

}  // namespace qlib

#endif  // QLIB_HEADER_ERROR